﻿using JE.MicroMVVM.Example.Contracts;
using JE.MicroMVVM.Example.DataModels;
using MicroMVVM;

namespace JE.MicroMVVM.Example.Services.Designtime
{
    [ExportService(ServiceType.Designtime, typeof (IServiceThree))]
    public class ServiceThreeDesigntime : IServiceThree
    {
        private readonly IServiceOne _serviceOne;
        private readonly IServiceTwo _serviceTwo;

        public DataModelThree DataModelThree { get; set; }

        public ServiceThreeDesigntime(IServiceOne serviceOne, IServiceTwo serviceTwo)
        {
            _serviceOne = serviceOne;
            _serviceTwo = serviceTwo;

            DataModelThree = DesignDataModel<DataModelThree, DataModelThree>.Get();
        }

        public DataModelThree GetModel()
        {
            return DesignDataModel<DataModelThree, DataModelThree>.Get();
        }
    }
}